好家伙,又一本技术书籍开源了!!
The following article is from JavaGuide Author Guide
大家好,今天给大家分享 5 个不错的 Java 开源项目。
项目概览:
PPHC:《高并发的哲学原理》开源图书 Snowy:国内首个国密前后分离快速开发平台 excel-streaming-reader:Excel 读取工具 checkstyle:代码规范检查 Imglib:轻量级的 JAVA 图像处理库
PPHC:《高并发的哲学原理》开源图书
项目介绍 :
这是一本开源书籍,主要是高并发架构相关的内容。 本书的目标是在作者有限的认知范围内,讨论一下高并发问题背后隐藏的一个哲学原理——找出单点,进行拆分。
这个系列最早发表于作者的公号,上个月才开源出来。根据作者介绍,这本开源书籍未来还会出版。
目录 :
内容预览 :
相关地址 :
项目地址:https://github.com/johnlui/PPHC 网站在线阅读:https://lvwenhan.com/tech-epic/499.html 公众号在线阅读:《高并发的哲学原理》
Snowy:国内首个国密前后分离快速开发平台
项目介绍 :
Snowy 是国内首个国密前后端分离快速开发平台,定位不是深度封装的框架,也不是无代码平台,更不是某个领域的产品。 前端基于 Vue+ Ant Design Vue,后端基于 Spring Boot+Mybatis Plus +MySQL+SaToken+Hutool。
开源版主要功能 :
效果预览 :
演示地址:https://snowy.xiaonuo.vip
超级管理员:superAdmin,密码:123456 业务管理员:bizAdmin,密码:123456
1、后台界面支持暗色、亮色、暗黑三种主题风格以及两种界面布局格式。并且,我们还可以自定义主题色以及其他样式设置。
2、系统配置模块可以进行系统配置、邮件配置、短信配置、文件配置等等。并且,我们还可以自定义配置,进而在项目中使用。
3、权限管理模块使用增强的 RBAC 权限设计,资源于接口独立授权,比较灵活。
4、支持阿里云短信、腾讯云短信发送,支持本地邮件、阿里云邮件、腾讯云邮件推送。
5、支持简易的系统监控。
相关地址 :
项目地址:https://gitee.com/xiaonuobase/snowy 官网:https://xiaonuo.vip 视频教程:https://space.bilibili.com/50101698/channel/collectiondetail?sid=739071
excel-streaming-reader:Excel 读取工具
项目介绍 :
Excel 流式代码风格读取工具,只支持读取 XLSX 文件。 基于 Apache POI 封装,同时保留标准 POI API 的语法。
使用示例 :
import com.monitorjbl.xlsx.StreamingReader;
try (
// 初始化
InputStream is = new FileInputStream(new File("/path/to/workbook.xlsx"));
Workbook workbook = StreamingReader.builder()
.rowCacheSize(100)
.bufferSize(4096)
.open(is)) {
// 遍历读取
for (Sheet sheet : workbook){
System.out.println(sheet.getSheetName());
for (Row r : sheet) {
for (Cell c : r) {
System.out.println(c.getStringCellValue());
}
}
}
// 或者按名称或索引打开工作表
Sheet sheet = workbook.getSheet("My Sheet")
}
项目地址 :https://github.com/monitorjbl/excel-streaming-reader
checkstyle:代码规范检查
项目介绍 :
一种可以帮助程序员编写符合编码标准的 Java 代码的开发工具。 可以使检查 Java 代码的过程自动化,检查项目主要包括:Javadoc 注释、imports、过长的类和方法、空格、重复文件等等。 高度可配置,可以支持几乎任何编码标准,默认内置 Sun Java 编码规范和 Google Java 编码规范两套配置文件,用户也可以根据自己的需要配置自己的规范。
集成方式 :
Checkstyle 拥有丰富的集成方式:CLI (命令行)、构建工具支持、IDE 支持等。
相关地址 :
项目地址:https://github.com/checkstyle/checkstyle 官网:https://checkstyle.org/
Imglib:轻量级的 JAVA 图像处理库
项目介绍 :
一个轻量级的 JAVA 图像处理库,致力于简化对图像的常见处理。 主要提供三部分的能力:图像收集(比如从 PDF 中提取图像,用到了 PDFBox)、图像处理(比如缩放、旋转、水印,基于 Thumbnailator 实现)、聚合与分裂(比如多个图像合并为一个图像、合并多个图像到 GIF 文件中)。 同 Thumbnailator 一样,imglib 为开发者屏蔽了复杂的 I/O 操作,以及无需再通过 Graphics2D 对象来手动操作图像,imglib 已经自动完成了所有这些工作。
使用示例 :
用户创建一个 hash 图像,头像点阵设定为 8px*8px
,头像大小为 300px*300px
,并增加一个边距为 20px
的边框。该图像生成任务,可以通过以下操作完成:
ImagePipes.ofEmptySource()
.register(new HashImageGenerator.Builder("Imglib") // hash 图像生成器
.gridVerticalNum(8) // 水平方向的点阵数量
.bgColor(ColorUtils.of(240, 240, 240)) // 背景色
.fgColor(ColorUtils.of(50, 150, 50)) // 前景色
.build())
.toThumbnails() // 转换为 Thumbnails
.addFilter(new HighQualityExpandHandler.Builder() // 图像无损放大处理器
.finalWidth(150) // 图像的宽度
.keepAspectRatio(true) // 保持长宽比例
.build())
.addFilter(new BorderHandler.Builder() // 边框处理器
.fillColor(ColorUtils.of(240, 240, 240)) // 边框填充色
.vMargins(15) // 垂直方向的边距
.hMargins(15) // 水平方向的边距
.alpha(1.0f) // 边框透明度
.build())
.scale(1.0)
.toFile(".../avatar.png");
结果:
相关地址 :
项目地址:https://github.com/nackily/imglib 案例:https://github.com/nackily/imglib/blob/master/docs/Examples.md
·············· END ··············
欢迎学编程的朋友们加入鱼皮的 编程知识星球 ,鱼皮会 1 对 1 解决你的问题,直播带你做出项目、为你定制学习计划和求职指导,还能获取海量编程学习资源,和上万名学编程的同学共享知识、交流进步。后面我大概率也会在星球里,直播带大家开发一些 ChatGPT 应用,敬请期待~
往期推荐